package hu.cskassai.sad.model.factory;

import hu.cskassai.sad.business.vo.EdgeVO;
import hu.cskassai.sad.business.vo.VertexVO;
import hu.cskassai.sad.model.graph.Edge;
import hu.cskassai.sad.model.graph.Vertex2D;

import java.awt.geom.Point2D;

public interface DomainFactory {
	
	Edge createEdge(Vertex2D fromVertex, Vertex2D toVertex);
	
	Edge createEdge(EdgeVO edgeVO, Vertex2D fromVertex, Vertex2D toVertex);
	
	Vertex2D createVertex2d(VertexVO vertexVO);
	
	Vertex2D createVertex2d(int X, int Y);
	
	Vertex2D createVertex2d(Point2D location);
	
}
